package Gestores;

import java.util.ArrayList;
import java.util.LinkedList;

import javax.swing.JOptionPane;

import Clases.Cliente;
import Clases.Producto;
import Clases.Proveedor;

public class gProductos {



	static private gProductos gestorProductos = null;
	static public gProductos getgClientes(){
		if(gestorProductos==null) gestorProductos=new gProductos();
		return gestorProductos;
	}
	
	public static  ArrayList aProductos;
	
	
	public gProductos() {
		aProductos=new ArrayList();
		
		Producto p=new Producto();
		p.setId_Producto(01);
		p.setNum_existencias(20);
		p.setNum_ventas(0);
		p.setPrecio(70);
		p.setProveedor(Proveedor.aqprox);
		
		Producto p2= new Producto();
		p2.setId_Producto(02);
		p2.setNum_existencias(20);
		p2.setNum_ventas(4);
		p2.setPrecio(120);
		p2.setProveedor(Proveedor.amd);
		
		aProductos.add(p);
		aProductos.add(p2);
		
	}
	public double calcularTotalPedido(LinkedList aCompras){
		double total=0;
		
		for(int i=0;i<aCompras.size();i++){
		total=total+buscarProductoCompra((int) aCompras.get(i)); 
		}
		
		
		return total;
		
		
	}
	
	public  int  buscarProductoCompra(int codigo){
		for(int i=0;i<aProductos.size();i++){
			if(codigo==((Producto) aProductos.get(i)).getId_Producto());
			return (int) ((Producto) aProductos.get(i)).getPrecio();
		}
		
		return 0;
		
	}
	
	public double borrarProductoCompra(int codigo , LinkedList aCompras){
		int i=0;
		boolean enc=false;
		
		while(i<aCompras.size() && enc==false){
			if(codigo==(int)aCompras.get(i)){
				enc=true;
				aCompras.remove(i);
			}else{
				i++;
			}
			
			
		}
		
	
		double total=calcularTotalPedido(aCompras);
		return total;	
		
		
	}
	
	public double calcularPuntos (int codigo,LinkedList aCompras){
		
		double puntos = 0;
		for(int i=0;i<aCompras.size();i++){
			puntos=(calcularTotalPedido(aCompras)*1.3)/3;	
		}
		
		
		return puntos;
		
	}
	
	
	
}
